הרצאה 8 - ניתוח רכיבים עיקריים (PCA)

הרציונל בשימוש:

שלבי ניתוח הרכיבים:

  1. נבנה מהנתונים שקיבלנו מטריצה (שורות = דוגמאות, עמודות = פרמטרים). נקרא לה X
  2. נמרכז את המטריצה (נמצא את הממוצע של כל עמודה ונחסיר את כל איברי העמודה בממוצע של אותה עמודה). למטריצה ההמורכזת נקרא X~
  3. נבנה את מטריצת השונות המשותפת: C=1n1X~TX~
    1. נשים לב שהאלכסון של מטריצה C הוא השוניות של כל דוגמא. סכימת השוניות (האלכסון = trace) תתן לנו את השונות הכללית
  4. נלכסן את מטריצת השונות המשותפת:
    1. נמצא את הערכים העצמיים: det(λIC)=0
    2. קיבלנו את מטריצת הערכים העצמיים. נשים לב כי השנויות על האלכסון שלה שווה לשונות הכללית של C, מכך שאם ניקח כל ערך עצמי ונחלק אותו בשונות הכללית, נוכל לדעת כמה אחוז מתוך השונות הכללית אותו ערך עצמי (במקור רכיב) מסביר.
    3. נמצא את הוקטורים העצמיים: det(CIλ)v=0 (עבור כל ערך עצמי)(לא נשכח לנרמל את הוקטור).
    4. נצמיד את הוקטורים העצמיים כעמודות, נקבל את מטריצה U
    5. אם נרצה לדחוס מימדים, נשאיר רק את מספר העמודות שתואם למספר המימדים שנרצה להשאיר
  5. נקודד לפי: Z=X~U
  6. נשחזר לפי X^=ZUT+x¯ כאשר x¯ היא מטריצת ממוצעי העמודות של המטריצה X

דוגמא לשאלה:
נתון סט דוגמאות אימון הכולל 4 דוגמאות -3 משתנים:
$$ \begin{pmatrix} 8 & 5 & 5 \ 4 & 9 & 3 \ 0 & -3 & 3 \ -4 & 1 & 5 \end{pmatrix}$$
א. חשבו את וקטור הממוצע ואת מטריצת השונות המשותפת:
$$ \begin{gathered}
\vec{X} = (\frac{8+4+0-4}{4}, \frac{5+9-3+1}{4}, \frac{5+3+3+5}{4}) = (2,3,4)
\
\
\hat{X} = \begin{pmatrix} 8-2 & 5-3 & 5-4 \ 4-2 & 9-3 & 3-4 \ 0-2 & -3-3 & 3-4 \ -4-2 & 1-3 & 5-3 \end{pmatrix} = \begin{pmatrix} 6 & 2 & 1 \ 2 & 6 & -1 \ -2 & -6 & -1 \ -6 & -2 & 2 \end{pmatrix}
\
\
C = \frac{1}{N-1}\hat{X}^T\hat{X} = \begin{bmatrix} \frac{80}{3} & 16 & 0 \ 16 & \frac{80}{3} & 0 \ 0 & 0 & \frac{4}{3} \end{bmatrix}
\end{gathered}
$$
ב. מצאו את הערכים העצמיים של C וסדרו אותם בסדר יורד

|803λ16016803λ00043λ|=0(43λ)[(803λ)2162]=0λ1=1283,λ2=323,λ3=43

ג. אנו מעוניינים לשמור על לפחות 90% מהשונות המוסברת, כמה רכיבים עיקריים יש לקחת?

Total Variance (Trace)=λ1+λ2+λ3=1283+323+43=164354.67Retention with k=1:λ1Trace=128/3164/3=12816478%(<90%)Retention with k=2:λ1+λ2Trace=128+32164=16016497.5%(>90%)We need k=2 components to retain 90% of the data.

ד. חשבו את מטריצת ההטלה U המכילה את הוקטורים העצמים המובילים (לפי מספר הרכיבים עליהם יש לשמור)

For λ1=1283:(Cλ1I)v1=0(1616016160004113)(x1x2x3)=0x1=x2,x3=0u^1=(1/21/20)For λ2=323:(Cλ2I)v2=0(161601616000913)(x1x2x3)=0x1=x2,x3=0u^2=(1/21/20)

ה. נתונה דוגמאת מבחן חדשה: Xtest=(5 6 5) חשבו את הקידוד, השחזור, ושגיאת השחזור עבור דוגמא זו

x^test=Uz+x¯=(1/21/21/21/200)(320)+(234)x^test=((1/232)+(1/20)(1/232)+(1/20)(032)+(00))+(234)=(330)+(234)=(564)ε=12xtestx^test2=12(565)(564)2ε=12(0,0,1)2=12(02+02+12)=0.5

יש טעות או חומר חסר?

אשמח אם תשלחו לי תגובה ואוסיף!